import "package:ct_pa_majordomo/pages/mine/apartment_manage/index.dart";
import "package:ct_pa_majordomo/pages/mine/apartment_manage/lock_setting/index.dart";
import "package:ct_pa_majordomo/pages/mine/apartment_manage/lock_setting/reminder_not_open_door/index.dart";
import "package:ct_pa_majordomo/pages/mine/apartment_manage/room_setting/index.dart";
import "package:ct_pa_majordomo/pages/mine/apartment_manage/room_setting/expiration_reminder/index.dart";
import "package:ct_pa_majordomo/pages/mine/apartment_manage/water_electricity_setting/price_setting/index.dart";
import "package:ct_pa_majordomo/pages/mine/apartment_setting/index.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay/index.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay/pages/basic_info_page.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay/pages/id_card_page.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay/pages/store_photo_page.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay/pages/settlement_page.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay/pages/business_license_page.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay/pages/account_license_page.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay/pages/enterprise_settlement_page.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay_record/pay_setting_page.dart";
import "package:ct_pa_majordomo/pages/mine/profile.dart";
import "package:ct_pa_majordomo/pages/mine/modifyPassword/index.dart";
import "package:ct_pa_majordomo/router/keys.dart";
import "package:flutter/cupertino.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay_record/index.dart";
import "package:ct_pa_majordomo/pages/mine/online_pay_record/detail.dart";
import "package:ct_pa_majordomo/pages/mine/withdraw/index.dart";
import "package:ct_pa_majordomo/pages/mine/withdraw/list.dart";
import "package:ct_pa_majordomo/pages/mine/withdraw/detail.dart";
import "package:ct_pa_majordomo/pages/mine/withdraw/detail_list.dart";
import "package:ct_pa_majordomo/pages/mine/withdraw/bill_list.dart";
import "package:ct_pa_majordomo/pages/mine/apartment_manage/water_electricity_setting/index.dart";
import "package:ct_pa_majordomo/pages/mine/apartment_manage/water_electricity_setting/authorization_management/index.dart";
import "package:ct_pa_majordomo/pages/mine/apartment_manage/water_electricity_setting/electricity_price_setting/index.dart";

class MineRoutes {
  static Map<String, WidgetBuilder> getRoutes(BuildContext context) {
    return {
      ///个人中心 个人信息
      Keys.MINE_PROFILE: (context, {arguments}) => const Profile(),
      ///个人中心 公寓设置
      Keys.APARTMENT_SETTING: (context, {arguments}) => const ApartmentSetting(),
      ///个人中心 公寓管理
      Keys.APARTMENT_MANAGE: (context, {arguments}) => const ApartmentManage(),
      ///个人中心 公寓管理 门锁设置
      Keys.APARTMENT_LOCK_SETTING: (context, {arguments}) => const LockSetting(),
      ///个人中心 公寓管理 未开门提醒
      Keys.APARTMENT_REMINDER_NOT_OPEN_DOOR: (context, {arguments}) => const ReminderNotOpenDoor(),
      ///个人中心 公寓管理 房间设置
      Keys.APARTMENT_ROOM_SETTING: (context, {arguments}) => const RoomSetting(),
      ///个人中心 公寓管理 即将到期设置
      Keys.APARTMENT_EXPIRATION_REMINDER: (context, {arguments}) => const ExpirationReminder(),
      ///个人中心 修改密码
      Keys.MINE_MODIFY_PASSWORD: (context, {arguments}) => const ModifyPasswordPage(),
      ///个人中心 线上支付
      Keys.ONLINE_PAY: (context, {arguments}) => const OnlinePayPage(),
      ///个人中心 线上支付 基本信息
      Keys.ONLINE_PAY_BASIC_INFO: (context, {arguments}) => BasicInfoPage(
        state: arguments["state"],
        onStateChanged: arguments["onStateChanged"],
        isEnterprise: arguments["isEnterprise"],
        isReadOnly: arguments["isReadOnly"] ?? false,
      ),
      ///个人中心 线上支付 身份证照片
      Keys.ONLINE_PAY_ID_CARD: (context, {arguments}) => IdCardPage(
        state: arguments["state"],
        onStateChanged: arguments["onStateChanged"],
        isEnterprise: arguments["isEnterprise"],
        isReadOnly: arguments["isReadOnly"] ?? false,
      ),
      ///个人中心 线上支付 经营场所照片
      Keys.ONLINE_PAY_STORE_PHOTO: (context, {arguments}) => StorePhotoPage(
        state: arguments["state"],
        onStateChanged: arguments["onStateChanged"],
        isEnterprise: arguments["isEnterprise"],
        isReadOnly: arguments["isReadOnly"] ?? false,
      ),
      ///个人中心 线上支付 结算账户
      Keys.ONLINE_PAY_SETTLEMENT: (context, {arguments}) => SettlementPage(
        state: arguments["state"],
        onStateChanged: arguments["onStateChanged"],
        isReadOnly: arguments["isReadOnly"] ?? false,
      ),
      ///个人中心 线上支付 营业执照照片
      Keys.ONLINE_PAY_BUSINESS_LICENSE: (context, {arguments}) => BusinessLicensePage(
        state: arguments["state"],
        onStateChanged: arguments["onStateChanged"],
        isReadOnly: arguments["isReadOnly"] ?? false,
      ),
      ///个人中心 线上支付 开户许可证照片
      Keys.ONLINE_PAY_ACCOUNT_LICENSE: (context, {arguments}) => AccountLicensePage(
        state: arguments["state"],
        onStateChanged: arguments["onStateChanged"],
        isReadOnly: arguments["isReadOnly"] ?? false,
      ),
      ///个人中心 线上支付 企业结算账户
      Keys.ONLINE_PAY_ENTERPRISE_SETTLEMENT: (context, {arguments}) => EnterpriseSettlementPage(
        state: arguments["state"],
        onStateChanged: arguments["onStateChanged"],
        isReadOnly: arguments["isReadOnly"] ?? false,
      ),
      ///个人中心 线上支付记录
      Keys.ONLINE_PAY_RECORD: (context, {arguments}) => const OnlinePaymentPage(),
      ///个人中心 线上支付记录详情
      Keys.ONLINE_PAY_RECORD_DETAIL: (context, {arguments}) => OnlinePayRecordDetailPage(record: arguments["record"]),
      ///个人中心 支付设置
      Keys.PAY_SETTING: (context, {arguments}) => const PaySettingPage(),
      ///个人中心 提现页面
      Keys.WITHDRAW: (context, {arguments}) => WithdrawPage(apartmentId: arguments["apartmentId"]),
      ///个人中心 提现申请列表
      Keys.WITHDRAW_LIST: (context, {arguments}) => const WithdrawListPage(),
      ///个人中心 提现申请详情
      Keys.WITHDRAW_DETAIL: (context, {arguments}) => WithdrawDetailPage(withdrawId: arguments["withdrawId"]),
      ///个人中心 提现申请详细列表
      Keys.WITHDRAW_DETAIL_LIST: (context, {arguments}) => const WithdrawDetailListPage(),
      ///个人中心 提现关联账单列表
      Keys.WITHDRAW_BILL_LIST: (context, {arguments}) => WithdrawBillListPage(withdrawId: arguments["withdrawId"]),
      ///水电设置
      Keys.WATER_ELECTRICITY_SETTING: (context, {arguments}) => const WaterElectricitySetting(),
      ///水电设置 授权管理
      Keys.WATER_ELECTRICITY_AUTHORIZATION_MANAGEMENT: (context, {arguments}) => const AuthorizationManagement(),
      ///水电设置 电费单价设置
      Keys.WATER_ELECTRICITY_ELECTRICITY_PRICE_SETTING: (context, {arguments}) => const ElectricityPriceSetting(),
      ///水电设置 电费单价设置
      Keys.WATER_ELECTRICITY_PRICE_SETTING: (context, {arguments}) => const PriceSetting(),
    };
  }
}